A Method of Program Understanding using Constraint Satisfaction for Software Reverse Engineering

نویسندگان

  • Steven Woods
  • Qiang Yang
  • Alex Quilici
چکیده

The process of understanding a source code in a high level programming language is a complex cognitive task The provision of helpful decision aid subsystems would be of great bene t to software maintainers Given a library of program plan templates generating a partial understanding of a piece of software source code can be shown to correspond to the construction of mappings between segments of the source code and particular program plans represented in a library of domain source programs plans These mappings can be used as part of the larger task of reverse engineering source code to facilitate many software engineering tasks such as software reuse and for program maintenance We present a novel model of program understanding using constraint satisfaction The model composes a partial global picture of source program code by transforming knowledge about the problem domain and the program structure into constraints These constraints facilitate the e cient construction of mappings between code and library knowledge Under this representational framework earlier heuristic approaches to pro gram understanding may be uni ed contrasted and compared We describe an empirical study which demonstrates the feasibility of our model in the program understanding subtask of partial local explanation In addition we incor porate this local model into the larger task of combining these local explanations into a coherent global picture of the code While many heuristic global models are possible we describe an encompassing structure and demonstrate through a careful depiction of the algorithm and several domain examples how constraint satisfaction o ers a rich paradigm for exploiting both library and program structural constraint information One primary advantage of the constraint satisfaction paradigm CSP is its generality many previous program understanding e orts can be more easily compared Another advantage is the improvement in search e ciency using various heuristic techniques in CSP

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Solving a bi-objective mathematical model for location-routing problem with time windows in multi-echelon reverse logistics using metaheuristic procedure

During the last decade, the stringent pressures from environmental and social requirements have spurred an interest in designing a reverse logistics (RL) network. The success of a logistics system may depend on the decisions of the facilities locations and vehicle routings. The location-routing problem (LRP) simultaneously locates the facilities and designs the travel routes for vehicles among ...

متن کامل

Towards a Method for VLSI Circuit Reverse Engineering

This paper tackles the VLSI circuit reverse engineering problem. Actual VLSI circuits are made of several millions of transistors or hundreds of thousands of logical gates. Whether it be for circuit verification, functional abstraction, or simply circuit understanding, reverse engineering aims at building a hierarchy from the transistor level, to gate level, to register level, up to more comple...

متن کامل

Constraint-Based Timetabling-A Case Study

This paper reports a case study in applying Constraint-Satisfaction techniques to university and school timetabling. It involves the construction of a substantial, carefully speci ed, fully tested and fully operational system. The software engineering aspect of Constraint-Satisfaction is emphasized in this paper. Constraint-Satisfaction problems are expressed in a language more familiar to the ...

متن کامل

Multi-objective Optimization of Multi-vehicle Relief Logistics Considering Satisfaction Levels under Uncertainty

Today, there is a high number of injuries and various wastes and debris produced during natural and unnatural events. This study aims to investigate the reverse logistics planning problem in the response and reaction phases as well as improvement and reconstruction in earthquake conditions by using a real case study. Regarding the high complexity of this type of optimization problem, a multi-ob...

متن کامل

Understanding software systems using reverse engineering technology perspectives from the Rigi project

Software engineering research has focused mainly on software construction and has neglected software maintenance and evolution. Proposed is a shift in research from synthesis to analysis. Reverse engineering is introduced as a possible solution to program understanding and software analysis. Presented is reverse engineering technology developed as part of the Rigi project. The Rigi approach inv...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996